/**
 * 
 */
package com.itinsys.enma.domain;

import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Set;

/**
 * @author pferraz
 *
 */
public class Planning implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int id;
	private String schoolId;
	private String career;
	private String careerYear;
	private Timestamp creationDate;
	private Timestamp sendDate;
	private String status;
	private Timestamp lastModDate;
	private User user;
	private Period defaultPeriod;
	private Set<Period> specialPeriods;
	
	
	
	
	/**
	 * 
	 */
	public Planning() {
	}
	/**
	 * 
	 * @param career
	 * @param careerYear
	 * @param user
	 * @param schoolId
	 */
	public Planning(String career,String careerYear, User user,String schoolId,Period defaultPeriod,Set<Period> specialPeriods) {
		this.schoolId=schoolId;
		this.career = career;
		this.careerYear = careerYear;
		this.creationDate=new Timestamp(new Date().getTime());
		this.status = Status.IN_PROCESS.toString();
		this.lastModDate = new Timestamp(new Date().getTime());
		this.user = user;
		this.defaultPeriod=defaultPeriod;
		this.specialPeriods=specialPeriods;
	}

	public int getId() {
		return id;
	}
	public String getCareer() {
		return career;
	}
	public String getCareerYear() {
		return careerYear;
	}
	
	public Timestamp getCreationDate() {
		return creationDate;
	}
	public Timestamp getLastModDate() {
		return lastModDate;
	}
	public Timestamp getSendDate() {
		return sendDate;
	}
	
	
	public User getUser() {
		return user;
	}
	public void setCareer(String career) {
		this.career = career;
	}
	public void setCareerYear(String careerYear) {
		this.careerYear = careerYear;
	}
	public void setCreationDate(Timestamp creationDate) {
		this.creationDate = creationDate;
	}
	public void setId(int id) {
		this.id = id;
	}
	public void setLastModDate(Timestamp lastModDate) {
		this.lastModDate = lastModDate;
	}
	public void setSendDate(Timestamp sendDate) {
		this.sendDate = sendDate;
	}
	

	public void setUser(User user) {
		this.user = user;
	}
	public String getSchoolId() {
		return schoolId;
	}
	public void setSchoolId(String schoolId) {
		this.schoolId = schoolId;
	}
	public Period getDefaultPeriod() {
		return defaultPeriod;
	}
	public void setDefaultPeriod(Period defaultPeriod) {
		this.defaultPeriod = defaultPeriod;
	}
	
	public Set<Period> getSpecialPeriods() {
		return specialPeriods;
	}
	public void setSpecialPeriods(Set<Period> specialPeriods) {
		this.specialPeriods = specialPeriods;
	}
	public String getStatus() {
		return status;
	}
	public void setStatus(String status) {
		this.status = status;
	}
	
	
	
	
	
	
}
